User Manual

	TextCompare
	Text file comparison utility for Windows 95

	© Copyright 1997 Chris Morris/Envy Technologies.

Contents

Part 1	Introduction
	Introduction to TextCompare
	Freeware usage agreement
	Requirements
	Installing TextCompare
	Uninstalling TextCompare

Part 2	Using TextCompare
	The user interface
	Comparison reports

Part 3 Appendices
        	Limitations of TextCompare
	Future enhancements
	File summary
	Contacting Envy Technologies
	Credits & acknowledgements

Introduction

Introduction to TextCompare

Text  Compare  is  a Windows 95/NT4 utility for comparing text files.  It scans both files and reports the differences between them, allows you  to  save  the report, and view the text files themselves.  Text Compare has been tested with various text files ranging in size from  a few lines to a full registry export of 14500 lines.  TC's comparison engine does not load the files  into  memory but  instead  compares  them  as it reads them directly from disk.  This means that there is theoretically no limit to the size of files that TC can compare.

TC has been tested on a 32Mb  P120  system, and has been able to check through files at a rate of over 5,000 lines per second.  TC has shown no bugs with what's been thrown at it. If you find any, I'd like to know so that they can be fixed :)

Freeware usage agreement
The TextCompare package consists of all files contained within the official distribution archive.  Before running TextCompare, you must read and agree to the following conditions. If you do not or can not agree to and accept the following conditions, you are prohibited from using this package.

•	TextCompare is copyrighted Chris Morris/Envy Technologies and may only be used 
	in accordance with the conditions set out in this usage agreement.
•	Permission is granted to any individual or institution to use, copy, or redistribute 
	TextCompare free of charge as long as the distribution package is not modified, or sold for profit. 
•	The TextCompare package may not be distributed in a modified form with the 
	exception of other archive formats.  This applies to adverts which may not be 
	included as either a file, nor as a modification or replacement to an existing .DIZ informational file.
•   	Neither the author of TextCompare, Chris Morris, nor Envy Technologies, are responsible for any 
            (direct or indirect) damage or costs, including, but not limited to, lost savings, lost profits and loss of data, which              
            may result from 	the use or the inability to use TextCompare.
•	Although care has been taken to write and test a package that does what this 
	document states, TextCompare is provided as is, without warranty or guarantee of 	
	any kind, either expressed or implied, as to the quality or performance of this 
	package, except that TextCompare will occupy disk space.
•	This usage agreement does not apply to any future releases which may be 
	packaged with an alternative usage agreement.
•	Neither Chris Morris, nor Envy Technologies are obligated to provide new 
	versions or support for existing versions of TextCompare even if a previous version of 
	this package is unusable.
•	TextCompare may be included on shareware CDs and floppy disks, subject to the conditions
	in this license agreement.
•	This usage agreement may not be modified nor supplemented without written 
	permission of Chris Morris or Envy Technologies.
•   	Any BBS/distribution adverts of any kind may only be included in the archive banner.
•   	If you use this program, you will constitute your agreement to this disclaimer/license.
•	All rights reserved worldwide.

Requirements
To use TextCompare you require:

•	Windows 95 or Windows NT4+ running on a PC compatible system with sufficient memory and hard disk space.

Installing TextCompare
To setup TextCompare, unpack this archive into a directory of your choosing and add any shortcuts to TextCompare you wish.

Uninstalling TextCompare
If you decide you wish to remove TextCompare from your system, simply delete the TextCompare executable, this file and any shortcuts created.  

TextCompare neither stores files outside of its own directory (with the exception of saved comparison reports whose destination is decided by the user), and does not create any registry entries of its own.

Using TextCompare

The user interface

Once TextCompare has loaded its window will be displayed, from which you can access all of TextCompare's features. TextCompare's window looks like this (only bigger):

From top to bottom the window consists of:

Panels
Each of the two panels relates to a file that is to be compared or viewed. In addition to displaying information about the files each panel also has two buttons like these:

  The file selection button. Pressing this button brings up a file selection dialogue which you can use to browse drives for text files to compare. When a file is selected its details will appear in the panel (name, number of lines in the file, and its size in bytes). If you try and select the same file twice the file selection dialogue will appear again so that you can select a different file. Once two files are selected the compare button will become active.

nb: You can view the full path to each file by holding the mouse over its name.

 The file viewing button. Pressing this button will display the contents of the selected file in the viewing window. The status bar will show which file is being viewed, and the corresponding view button will become ghosted providing an extra indication that the file is being viewed. If a comparison report has been generated then it will be temporarily buffered to disk - to return to viewing the report simply press the compare button.

Beneath the two panels are the main program controls and settings:

Priority
This drop-down list allows you to select the CPU priority given to the comparison engine. This can be accessed at any time, even when the comparison engine is running. You may not be able to notice any effect with this option if you have a fast PC, but it was primarily included for users with slow machines wanting to compare large files.

Depth
This drop-down list lets you select the size of the buffer that will be used by the comparison engine. The number given is the number of lines from each file that will be buffered. The comparison engine independently updates the buffers throughout the comparison process ensuring as high a possibility of detecting moved/changed lines as possible. If you suspect that large insertions/deletions may have been made between two files or if you want TextCompare to look at entire files then set this option correspondingly high. The maximum limit is 1000 lines, and thus up to 1000 lines of each file will be stored in memory at any time during the comparison process.

 The compare button. Pressing this button will start the comparison process. The  button will become active allowing you to cancel the comparison if required. As the comparison engine proceeds the progress bar will fill. When the comparison is complete (or is stopped) the comparison report will be displayed in full, and the viewing window will allow input so that you can add comments or information to the report. The viewing window is not updated with the comparison report while the comparison engine is running in order to increase its speed.

 The save button. This can be used to save the comparison report to a user specified text file. This button is only active when there is a COMPLETE comparison report to save.

 Displays information about TextCompare, including version number and the amout of memory available to Windows.

Viewing window
A viewing window which displays the contents of files, and the results of a comparison operation. The viewing window's contents are detailed in the status bar below.

Status bar
The status bar is split into two sections - View, which tells you what is being displayed in the viewing window.
                                                          - Status, which gives information about the program's activity.

Appendices

Limitations of TextCompare
TextCompare may produce unusual results if used to compare binary files or files containing large amounts of high ASCII. Text compare was NOT designed to compare such files.

TextCompare will slow down to some degree if there are a lot of differences between files. Note that there is nothing I can do about the speed decrease when TextCompare adds to the comparison report, except to add a snappy menu to change the priority given to the engine :) The comparison engine has been optimised as much as possible.

Version history
- All comments welcome. See below.
          - Completely rewrote the user interface, now so much cooler :)
          - Completely rewrote the comparison engine to detect inserted, deleted, and moved lines with no significant speed
             loss.
          - Much improved comparison reports to include all the extra information.
          - Added file dates to enable easier checking of file versions.
       
v1.3 - Tweaked the comparison engine so it's slightly faster.
       - Added file size indicators and redesigned front end to include filter selection box and a few other tweaks.

v1.2 - Rewrote comparison engine into a thread, and included menu to change the priority given to the comparison engine.
       - Fixed problem with huge files not reporting the correct number of lines.
       - Added a few extra status messages.

v1.1 - Changed drive box and directory list window to use full Windows 95 style graphics.
       - Enhanced provision for editing the comparison report.

v1.0 - Initial limited release.

Future enhancements?
- Support for RTF and Word files
- Handling of high-ASCII/binary

If you have any ideas for improvements or bug reports send them to me and I'll include as much as possible in new versions.

File summary
This package consists of the following 3 files:

	TCompare.EXE		PaperMan application
	TCompare.RTF		Rich Text format documentation
	ENVYTECH.PGP	Envy Technologies PGP public key

Contacting the author of TextCompare
	FidoNet:	2:255/78 (Chris Morris)
	Internet:	Chris_J_Morris@msn.com	 
                                    
Note that all mail concerning TextCompare itself should be addressed to the author.

Contacting Envy Technologies
There are several ways of contacting Envy Technologies for general queries.  They are:

	FidoNet:	2:255/78 (Damien Guard or Chris Morris)
	RANet:		73:7440/78 (Damien Guard)
	Internet:		envy@guernsey.net
	CompuServe:	100331,640
	BBS (UK):	(01481) 37156/37256		(33k6)
	BBS (Internat.):	+44-1481-37156/37256		(33k6)

To receive the latest versions of Envy Technologies' releases:

	FidoNet:	FREQ from 2:255/78 or 2:255/119
			TCOMPARE	for latest version of TextCompare
			ENVY		for list of releases to dates + future release info

	BBS:		Log onto our BBS (numbers listed above) as user GUEST.
			Go into the file menu, select group [Ice] Distribution then
			file area Envy Technologies.

	Internet WWW:	http://www.envytech.demon.co.uk

Credits & acknowledgements
My first and foremost thanks to Damien Guard for getting me into Delphi, for testing code, and letting me join Envy Technologies. 

Development tools:	Borland Delphi v2.01

Thank-you for using TextCompare,
  Chris Morris - Envy Technologies - 22 February 1997. 
Marble logo by Chris Morris.